package DataStructure.tree;

/**
 * 226. 翻转二叉树 https://leetcode.cn/problems/invert-binary-tree/
 * 题目简述：给你一棵二叉树的根节点 root ，镜像翻转这棵二叉树，并返回其根节点。
 */
public class InvertTree {

    /**
     * 思路：即递归地交换自己的左右子树。交换根节点的左右孩子，然后递归的交换左右孩子的左右孩子。
     */
    public TreeNode invertTree(TreeNode root) {
        if(root == null) return null;
        TreeNode temp = root.left;
        root.left = root.right;
        root.right = temp;
        invertTree(root.left);
        invertTree(root.right);
        return root;
    }

}
